Methods and Systems for Determining Flow Direction Using a Bidirectional Pressure Sensor

ABSTRACT

Computerized methods and systems for determining flow direction relative to a bidirectional pressure sensor are provided. The method includes receiving pressure information from the bidirectional pressure sensor. The method includes using the pressure information to evaluate, at a processing circuit, pressure at the bidirectional pressure sensor over time, The method includes assigning a flow direction to a current pressure of the bidirectional pressure sensor by comparing the current pressure to at least one past pressure.

BACKGROUND

The present invention relates generally to the field of variable airvolume (VAV) controllers for heating, ventilation, and air conditioning(HVAC) systems. The present invention more particularly relates tosystems and methods of determining the direction of airflow across apressure sensor in a VAV controller.

Velocity pressure is one description of air flow in a duct. Velocitypressure is the difference between the total (face) pressure and thestatic pressure. The static pressure and the face pressure can bemeasured. At least two hoses or tubes, corresponding to in-flow andout-flow, are attached to the ductwork. The hoses may be connected to apressure sensor to measure the face pressure.

With a unidirectional or single-ended pressure sensor, face pressure canbe measured in only one direction. Accordingly, the face pressure andthe static pressure must be measured at the appropriate locations toaccurately calculate velocity pressure. Face pressure is measured on thehigh side (in-flow), and static pressure is measured on the low side(out-flow). The hoses or tubes carrying the air must be connected to thecorrect side of the pressure sensor so that face pressure is measured onthe high side. A bidirectional or bipolar pressure sensor can measureboth negative pressure and positive pressure (i.e. air flow in bothdirections). Nevertheless, a technician may still be required to installthe hoses on particular sides of the pressure sensor so that the actualdirection of airflow is known.

Bidirectional pressure sensors can lead to confusion or mistakes amongtechnicians in the field, resulting in incorrect (backwards)installations of the hoses to the pressure sensor. Manufacturers andconsumers can incur costs relating to the incorrect installation. Thisincludes monetary costs associated with equipment designed to alleviateconfusion (e.g., differently colored tubes to designate the side theyare to be installed on). This can also include the time required formanual verification of the direction in which the hoses were originallyinstalled, time required for reinstallation of the hoses when they wereoriginally installed backwards, down time during power cycling of theVAV controller, or down time associated with re-commissioning of the VAVcontroller.

Reducing or omitting manual verification of the hose installation and/orairflow direction is challenging and difficult.

SUMMARY

One embodiment of the invention relates to a computerized method fordetermining flow direction relative to a bidirectional pressure sensor.The method includes receiving pressure information from thebidirectional pressure sensor. The method includes using the pressureinformation to evaluate, at a processing circuit, pressure at thebidirectional pressure sensor over time, The method includes assigning aflow direction to a current pressure of the bidirectional pressuresensor by comparing the current pressure to at least one past pressure.

Another embodiment of the invention relates to a controller coupled to abidirectional pressure sensor. The controller includes a processingcircuit configured to receive at least one signal representative of apressure measured by a bidirectional pressure sensor. The processingcircuit is further configured to compare the at least one signal to athreshold. The threshold comprises a positive value and a negativevalue. The processing circuit is configured to determine a direction offlow based on the comparison and to output a pressure variablecomprising a pressure magnitude and a sign based on the determineddirection.

Yet another embodiment of the invention relates to tangiblecomputer-readable storage media having computer-executable instructionsembodied thereon that when executed by a computing system perform amethod for determining flow direction relative to a bidirectionalpressure sensor. The media includes instructions for receiving at leastone signal representative of a pressure measured by a bidirectionalpressure sensor. The media includes instructions for comparing the atleast one signal to a threshold. The threshold comprises a positivevalue and a negative value. The media includes instructions fordetermining a direction of flow based on the comparison. The mediaincludes instructions for outputting a pressure variable comprising apressure magnitude and a sign based on the determined direction

Alternative exemplary embodiments relate to other features andcombinations of features as may be generally recited in the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

The disclosure will become more fully understood from the followingdetailed description, taken in conjunction with the accompanyingfigures, wherein like reference numerals refer to like elements, inwhich:

FIG. 1 is a block diagram of a system for determining flow directionusing a bidirectional sensor, according to an exemplary embodiment;

FIG. 2 is a flow diagram of a process for determining flow directionusing a bidirectional sensor, according to an exemplary embodiment;

FIG. 3 is a more detailed flow diagram of the process for determiningflow direction of FIG. 2, according to an exemplary embodiment;

FIG. 4 is a more detailed flow diagram of the process for determiningflow direction of FIG. 3, according to an exemplary embodiment;

FIG. 5A is a plot of pressure over time at a bidirectional sensor,according to an exemplary embodiment; and

FIG. 5B is a plot of pressure relative to the dynamic threshold used bysystems and methods described herein, according to varying exemplaryembodiments.

DETAILED DESCRIPTION

Before turning to the figures, which illustrate the exemplaryembodiments in detail, it should be understood that the disclosure isnot limited to the details or methodology set forth in the descriptionor illustrated in the figures. It should also be understood that theterminology is for the purpose of description only and should not beregarded as limiting.

Referring generally to the figures, a system for use with abidirectional pressure sensor is shown and described. The system isgenerally configured to automatically determine the direction ofairflow. The direction of airflow may be expressed as a polarity of thepressure value that is measured by the bidirectional sensor. That is, apositive pressure or a negative pressure may be indicative of airflow indifferent directions. A dynamic threshold may be used to determine ifand when the polarity (and the direction of air flow has changed). Thesystem may be implemented in a controller local to the variable airvolume (VAV) box (e.g., a variable air volume modular assembly (VMA)) orimplemented in an upstream building automation system controller (e.g.,a building management computer such as the Johnson Controls METASYSNetwork Automation Engine, etc.).

One or more embodiments of the present disclosure may advantageouslyallow installation of air flow tubes at a VAV controller without regardto the direction of air flow. One or more embodiments may automatically(i.e., dynamically) determine the direction of airflow in differentorientations of the air flow tubes. One or more embodiments mayadvantageously reduce the need for human or manual confirmation of theair flow direction relative to a bidirectional sensor.

Referring to FIG. 1, a block diagram of system 100 for determining flowdirection is shown, according to an exemplary embodiment. System 100includes pressure sensor 102. According to an exemplary embodiment,pressure sensor 102 is a bidirectional (i.e., bipolar) pressure sensor.That is, the sensor can measure both positive and negative velocitypressure. Velocity pressure may be positive or negative depending on thedirection of air flow across the sensor. In some embodiments, pressuresensor 102 may be part of a VAV modular assembly. The modular assembly,for example, may be an all-in-one-assembly including a pressure sensor,actuator and controller. In other embodiments, the pressure sensor maybe a stand-alone device.

In the embodiment of FIG. 1, pressure sensor 102 is shown to includecommunications electronics 104 (e.g., a wire terminal, a datacommunication port, a wireless transmitter, etc.). The signals (e.g.,voltage signals varying in amplitude to represent pressure) generated bypressure sensor 102 may be transmitted to controller 110 viacommunications electronics 104. In some embodiments, pressure sensor 102may include processing electronics to convert the voltage signals todigital pressure values. In such embodiments, the digital pressurevalues may be transmitted to controller 110 via communicationselectronics 104.

In the embodiment of FIG. 1, system 100 is shown to include only onepressure sensor 201. In various embodiments, multiple pressure sensors102 (e.g., corresponding to multiple VAV controllers) may be implementedwith one or more controllers 110. As used in the discussion herein,pressure generally refers to the face pressure at the pressure sensor102 or the velocity pressure (the difference of the face pressure andthe static pressure).

FIG. 1 illustrates flows 132, 134. Flows 132, 134 may correspond withtwo or more hoses or tubes connected to pressure sensor 102. Accordingto an exemplary embodiment, flows 132, 134 represent airflows in a HVACsystem. Flow 132 may be an in-flow and flow 134 may be an out-flow, orvice versa. The systems and methods described herein are configured todetermine the direction of the flows 132, 134. Advantageously, thesystems and methods described herein can dynamically or automaticallydetermine the flow direction and use such flow direction in subsequentcontrol activities or calculations. In various embodiments, controller110 may receive signals representative of pressure measurements frompressure sensor 102 both when there is an active flow and when there isno active flow.

System 100 includes controller 110. Controller 110 may be configured tocause the steps of the processes described herein (e.g., FIGS. 2-4) tobe completed. Controller 110 may use pressure to control one or moreprocesses (e.g., HVAC processes, manufacturing processes, industrialprocesses, etc.). Controller 110 may be configured to evaluate pressureover time and to determine flow direction based on current pressurerelative to past pressure. Controller 110 may be configured to determineflow direction based on pressure values both when there is active flowand when there is no active flow. According to an exemplary embodiment,controller 110 is integrated within a single computer (e.g., one server,one housing, etc.). In various other exemplary embodiments, controller110 can be distributed across multiple servers or computers (e.g., thatcan exist in distributed locations). In such embodiments, for example, afirst step may be completed by circuitry local to the sensor while oneor more subsequent steps are conducted by circuitry of a fieldcontroller. In another exemplary embodiment, controller 110 may beintegrated with a smart building manager that manages multiple buildingsystems.

Controller 110 is shown to include processing circuit 112. Processingcircuit 112 receives and processes signals from pressure sensor 102.Signals received from pressure sensor 102 may undergo one or morefiltering processes. Processing circuit 112 may be configured todetermine a dynamic threshold based on the past and current pressurevalues. The dynamic threshold may automatically adapt (e.g., increaseand decrease) based on pressure values. Processing circuit 112 may beconfigured to compare a current pressure to the dynamic threshold todetermine the polarity of the air flow.

Processing circuit 112 includes processor 114 and memory 116. Processor114 can be implemented as a microprocessor, general purpose processor,an application specific integrated circuit (ASIC), one or more fieldprogrammable gate arrays (FPGAs), a group of processing components, orother suitable electronic processing components. Memory 116 is one ormore devices (e.g., RAM, ROM, Flash memory, hard disk storage, etc.) forstoring data and/or computer code for completing and/or facilitating thevarious processes and modules described in the present disclosure.Memory 116 may be or include volatile memory or non-volatile memory.Memory 116 may include database components, object code components,script components, or any other type of information structure forsupporting the various activities and information structures describedin the present disclosure. According to an exemplary embodiment, memory116 is communicably connected to processor 114 via processing circuit112 and includes computer code for executing (e.g., by processingcircuit 112 and/or processor 114) one or more processes describedherein. Memory 116 can also be used to store values discussed as used bythe controller 110. For example, memory 116 can store historicalpressure values, current pressure values, a current flow directiondetermination, historical flow direction determinations, or any otherfinal, supporting, or intermediate data used by the systems and methodsdescribed herein.

While memory 116 is shown in FIG. 1 as part of a controller 110 anddistinct from pressure sensor 102, the logic represented by the modulesof controller 110 may be implemented on one or more devices communicablycoupled to pressure sensor 102. For example, the logic may beimplemented in circuitry of or local to the pressure sensor itself.

Memory 116 includes filtering module 122. Filtering module 122 includesinstructions to reduce the noise in the signals received from pressuresensor 102. Signal noise may arise from many factors, includingmechanical limitations of the pressure sensor and its components. Noisemay also arise from dynamics of the fluid being measured, such asbackflow of air in the HVAC system. One or more filtering processes maybe implemented on the incoming signals. According to an exemplaryembodiment, the filtering processes include a Butterworth filter and aBessel filter. In various embodiments, different methods of reducingsignal noise may be implemented. In some embodiments, in addition to orin lieu of the one or more filtering processes, signal averaging orother smoothing may be implemented.

Memory 116 includes sensor value evaluation module 118. In someembodiments, module 118 includes instructions for receiving a signalgenerated by pressure sensor 102 and processing the signal. Theprocessing may result in the output of a raw pressure. In otherembodiments, e.g., when the pressure sensor 102 includes processingelectronics to convert the sensor voltage to pressure, sensor valueevaluation module 118 may receive pressure values from pressure sensor102. Sensor value evaluation module 118 may attach a time stamp to thereceived data to organize the data by time. When multiple pressuresensors 102 are coupled to controller 110, module 118 may assign anidentifier to the data to organize the data by, e.g., VAV controller,zone, building, etc. In some embodiments, continuous data may bereceived from the pressure sensor 102. In other embodiments, pressuresensor 102 may transmit data periodically (e.g., every three seconds) tocontroller 110.

According to an exemplary embodiment, e.g., with a bidirectional orbipolar pressure sensor, pressure values may be signed positive ornegative. Pressure values of opposite sign may be indicative of oppositeflow directions. After the HVAC system, pressure sensor, and/orcontroller has initialized or come online, the pressure values generallyremain either positive or negative, though the magnitude will vary. Insome circumstances, the pressure values may also switch sign. This mayoccur, for example, if the hoses are changed to an oppositeconfiguration (i.e., when the direction of the airflow changes). Thesign of the pressure values after the configuration has changed may beopposite compared to the sign of the pressure values with the hoses inthe earlier configuration. Controller 102 may advantageously determinewhen the flow direction has changed without requiring human input as tothe correct flow direction or notification of the change.

Memory 112 includes polarity assignment module 128. Module 128 mayinclude instructions for assign a polarity to a pressure value.According to an exemplary embodiment, module 128 may assign either apositive (+1) or negative (−1) polarity. Polarity may also be describedas a multiplier. Module 128 may advantageously ensure that the finalcalculated pressure is correctly indicated (positive pressurecorresponds with a first flow direction and negative pressurecorresponds with a second flow direction, etc.). According to anexemplary embodiment, the final calculation is the product of thepressure value received from sensor 102 and the polarity (e.g., 1, −1).The product of a positive pressure value and positive polarity ispositive. The product of a negative pressure value and negative polarityis also positive.

Memory 112 includes dynamic threshold determination module 124. Module124 includes instructions for placing a threshold band around thereceived pressure values. The threshold band describes a range of recentpressure values. According to an exemplary embodiment, the band iscentered around zero pressure and includes a positive and negativethreshold of equal magnitude (but opposite sign). An example of thepositive threshold 506 and negative threshold 508 (together forming thethreshold band) is shown in FIG. 5B.

In some embodiments, the band may be fixed. Thus, for example, whenpressure values exceed the band in a positive direction, then controller110 may determine that the flow is in the positive direction. If thepressure values later exceed the band in the negative direction, thecontroller 110 may determine that the flow has switched directions andthe flow is in a negative direction.

In some embodiments, the band is dynamic or adaptive. The controller 110may cause the band to adjust (e.g., increase or decrease in magnitude)based on current pressure values. Generally, when the pressure valuesincrease, the band increases. That is, the magnitude of the positive andnegative thresholds increase. This may be described as a thresholdexpansion phase. Generally, when the pressure values decrease, thepositive and negative thresholds decrease. This may be described as athreshold collapse phase. According to an exemplary embodiment, themagnitude of the dynamic threshold is greater than or equal to theimmediate past pressure value(s). According to another exemplaryembodiment, initial conditions when the HVAC system, power controller110, and/or pressure sensor 102 may include initializing the dynamicthreshold to zero or near zero.

Controller 110 may be configured to reassign polarity (i.e., directionof air flow) when a criterion is satisfied. According to an exemplaryembodiment, controller 110 reassigns polarity when the magnitude of acurrent pressure value exceeds or equals the dynamic threshold in thedirection opposite the immediate or recent past pressure value(s). Thisadvantageously helps ensure that controller 110 is not susceptible toincorrectly determining flow direction based on noise or other transientconditions (e.g., a reverse in air pressure due to a temporary systemerror or a temporary environmental or weather condition).

In one example, a current dynamic threshold may be ±0.02 inches w.c. Thedynamic threshold may be based on the immediate (i.e., recent) pastpressure value(s). That is, the immediate past pressure value(s) havebeen greater than or equal to −0.02 inches w.c. As described indiscussion of FIG. 4, controller 110 may have determined that the flowis in a negative direction, based on the recent past pressure valuesthat are greater than or equal to −0.02 inches w.c. Controller 110 mayhave assigned a negative (−1) polarity such that the product of thenegative pressure value and negative polarity is positive. In order forcontroller 110 to determine that the flow has become positive (andreassign polarity), the pressure value received must be greater than orequal to +0.02 inches w.c. That is, the magnitude of a current pressurevalue exceeds or equals the band in the opposite direction. When thecurrent pressure value does exceed or equal +0.02 inches w.c.,controller 110 assigns a +1 polarity. The final calculated pressurewould be positive because the product of the positive pressure value andpositive polarity is positive.

Controller 110 may be configured to reassign polarity in a similarmanner when recent past pressure values are positive. As in the example,above, a dynamic threshold may be ±0.02 inches w.c. The recent pastpressure values may have been less than or equal to +0.02 inches w.c.Controller 110 may have assigned a positive (+1) polarity such that theproduct of the positive pressure value and positive polarity ispositive. In order for controller 110 to determine that the flow hasbecome negative, the pressure value received must be less than or equalto −0.02 inches w.c. That is, the magnitude of a current pressure valueexceeds or equals the band in the opposite direction. The finalcalculated pressure would be positive because the product of thenegative pressure value and negative polarity is positive.

Controller 110 advantageously utilizes both magnitude and sign of thepressure value to determine if the direction of air flow has changed.Controller 110 also advantageously utilizes a dynamic or adaptivethreshold. As a VAV controller comes online, more air flows to thepressure sensor, the band is caused to expand outwards and the VAVcontroller starts working. For example, controller 110 may determineairflow is in a positive direction based on positive pressure valuesreceived from pressure sensor 102. Controller 110 may continue receivingsignals indicative of airflow in the positive direction with greatermagnitude. This enables a user, e.g., an HVAC engineer, to be confidentin controller 110's determination that the airflow is in the positivedirection and that the assigned positive (+1) polarity is correct. Ifthe airflow changes to the opposite direction (e.g., pressure valuesbecome negative) and the controller 110 receives signals indicative ofincreasing negative flow, then controller 110 may determine that thedirection of airflow is now negative. Thus, the polarity may be changedto negative (−1). In other words, the system may switch flow directions(switch polarity) when both the sign of the current pressure value haschanged and when the current magnitude of the pressure exceeds immediatepast pressure magnitude.

According to an exemplary embodiment, the dynamic threshold is greaterthan or equal to immediate past maximum pressure value(s) received frompressure sensor 102. As the pressure increases, the band also increases.According to an exemplary embodiment, when the pressure decreases toless than 50% of the immediate past pressure value, the band decreasesto twice the current pressure value. Thus, if the current pressuredecreases, but is between 50% and 100% of the current flow, the banddoes not decrease. In other embodiments, different percentage thresholdsmay be utilized. According to an exemplary embodiment, if the pressureis trending downward, the band may be at least twice the current flow.If the pressure then increases, the band may not increase until thepressure exceeds the magnitude of the band. Thus, in this exemplaryembodiment, the adaptive threshold utilizes two mechanisms: (1) the bandincreases for each maximum pressure value seen; and (2) the banddecreases to twice the current pressure value during when pressure isdecreasing. Controller 110 advantageously utilizes hysteresis todetermine when flow direction has changed. For example, past pressurevalues have led to a determination that flow is positive. In anexemplary embodiment, controller 110 advantageously makes determinationof a direction change possible, but only when the determination is basedon appropriate pressure data (e.g., sign change and sufficientmagnitude).

Controller 110 can advantageously determine flow direction regardless ofthe size of a VAV controller. The adaptive threshold adjusts to thepressure values of the particular VAV controller. Controller 110 alsoadvantageously accounts for building and HVAC system changes. Air flowmay vary based on whether the HVAC system is heating or cooling, whetherthe building space is occupied or unoccupied, whether the HVAC system isshut down during a period of the day (e.g., during the night) andbrought online during others (e.g., during the day), or whether or notthe configuration of the air tubes connected to the VAV controller havebeen changed. The adaptive threshold accounts for such system changes.

Memory 116 includes threshold limit module 120. Module 120 includesinstructions to prohibit the dynamic threshold from exceeding aparticular maximum magnitude. In some embodiments, a user may input athreshold limit. In other embodiments, the threshold limit may becalculated based on a history of past pressure values. In yet otherembodiments, the threshold limit is associated with a particular modelor type of sensor or application. The threshold limit advantageouslyavoids a noise event or pressure spike from improperly affecting thethreshold for many future periods of time. According to an exemplaryembodiment, initial conditions when the HVAC system, power controller110, and/or pressure sensor 102 initialize may include setting a 0.15inches w.c. threshold limit.

Memory 116 includes final value calculation module 126. Module 126includes instructions for calculating the pressure based on the currentpressure value and the current polarity determination. According to anexemplary embodiment, the calculation is:

final_value=pressure_value*Polarity

Polarity may be a value determined based on the instructions in polarityassignment module 128. In other embodiments, different calculations maybe used. Final_value may then be normally positive in a positivepressure scenario, advantageously enabling a positive pressure value tocorrespond with positive pressure. The calculation is “final” in thesense that it is done after the polarity has been determined. The“final_value” may be stored in memory for access by other devices,communicated via communications electronics, or otherwise output by thecontroller.

Controller 110 is shown to include configuration tools 138.Configuration tools 138 can allow a user to define (e.g., via graphicaluser interface controls (GUI), via prompt-driven “wizards,” etc.) howthe controller 110 should react to changing conditions in the buildingand/or HVAC system. Configuration tools 138 may also allow user to inputinitial conditions to implement when the HVAC system, power controller110, and/or pressure sensor 102 initialize. It should be noted that forsome devices “initialize” may mean that some or all of the device'scomponents were previously powered on but not actively working. Onceinitialized, the device may be powered on and actively functioning.Initialize may also mean that the device is powered on when the devicewas previously completely or nearly completely powered down.

In an exemplary embodiment, configuration tools 138 allow a user tobuild and store condition-response scenarios that can cross multipleHVAC systems, multiple building systems, and multiple enterprise controlapplications (e.g., work order management system applications, entityresource planning applications, etc.). For example, the configurationtools 138 can provide the user with the ability to combine data (e.g.,from subsystems, from event histories) using a variety of conditionallogic. In varying exemplary embodiments, the conditional logic can rangefrom simple logical operators between conditions (e.g., AND, OR, XOR,etc.) to pseudo-code constructs or complex programming languagefunctions (allowing for more complex interactions, conditionalstatements, loops, etc.). The configuration tools 124 can present userinterfaces for building such conditional logic. The user interfaces mayallow users to define policies and responses graphically. In someembodiments, the user interfaces may allow a user to select a pre-storedor pre-constructed policy and adapt it or enable it for use with theirsystem.

Data and processing results from modules 118, 120, 122, 124, 126, 128 orother data stored or modules of controller 110 may be accessed by or maybe pushed to monitoring and reporting applications 140. This may allowreal time control or “system health” dashboards to be viewed andnavigated by a user (e.g., a HVAC engineer). For example, monitoring andreporting applications 140 may include a web-based monitoringapplication with several graphical user interface (GUI) elements (e.g.,widgets, dashboard controls, windows, etc.) for displaying keyperformance indicators (KPI) or other information to users of a GUI. Inaddition, the GUI elements may summarize relative pressure in VAVcontrollers in different buildings (real or modeled), differentcampuses, or the like. Other GUI elements or reports may be generatedand shown based on available data that allow users to assess performanceacross one or more HVAC systems from one screen. The user interface orreport (or underlying data engine) may be configured to aggregate andcategorize operating conditions by building, building type, equipmenttype, and the like. The GUI elements may include charts or histogramsthat allow the user to visually analyze the operating parameters andpressure of one or more VAV controllers. Further, in some embodiments,applications and GUI engines may be included outside of controller 110(e.g., as part of a smart building manager). Controller 110 may beconfigured to maintain detailed historical databases (e.g., relationaldatabases, XML databases, etc.) of relevant data and includes computercode modules that continuously, frequently, or infrequently query,aggregate, transform, search, or otherwise process the data maintainedin the detailed databases. Controller 110 may be configured to providethe results of any such processing to other databases, tables, XMLfiles, or other data structures for further querying, calculation, oraccess by, for example, external monitoring and reporting applications.GUI services 136 may support such applications.

Controller 110 may include one or more GUI servers, services, or engine136 (e.g., a web service). GUI services 136 may be configured togenerate graphical user interfaces for a controller or another server toprovide to a user output device (e.g., a display, a mobile phone, aclient computer, etc.). The graphical user interfaces may present orexplain current and past pressure, dynamic threshold, determinedpolarity, and/or other system information. GUI services 136 mayfacilitate a user's (e.g., HVAC engineer's) ability to track pressureand the determined flow direction via, e.g., a web-based monitoringapplication. GUI services 136 may additionally allow a user to manuallyset and update initial conditions, system constraints, certainthresholds, refresh rates, number of samples to use in a past window,how quickly to adjust thresholds, etc.

Controller 110 includes communications electronics 130. Pressure sensor102 also includes communications electronics 104. In some embodiments,e.g., when pressure sensor 102 is part of a VAV controller,communications electronics 104 may be implemented as part of the VAVcontroller. Communications electronics 104, 130 may be or include anynumber of wire terminals, ports, or network interfaces. The processingcircuit may be configured to communicate with one or more BAS componentsvia a network connection. An analog voltage signal and/or pressure valuemay be received at controller 110 from pressure sensor 102.

Communications electronics 104 and/or 130 may include one or morefilters, analog to digital converters, buffers, power lines, or othersupporting circuitry. Communications electronics 104, 130 can also be orinclude wired or wireless interfaces (e.g., jacks, antennas,transmitters, receivers, transceivers, wire terminals, etc.) forconducting digital data communications. For example, communicationselectronics 104, 130 can include an Ethernet card and port for sendingand receiving data via an Ethernet-based communications network. Inanother example, communications electronics 104, 130 includes a ZigBeeor WiFi transceiver for communicating via a wireless communicationsnetwork. Communications electronics 104, 130 may be configured tocommunicate via local area networks or wide area networks (e.g., theInternet, a building WAN, etc.).

Referring to FIG. 2, a flow diagram of a process 200 for determiningflow direction at a bidirectional sensor is shown, according to anexemplary embodiment. Process 200 may be implemented on, e.g.,controller 110 (FIG. 1). Process 200 may be a high level representationof a process described in more detail in FIGS. 3 and 4.

Process 200 includes receiving pressure information from bidirectionalpressure sensor (202). The pressure information may be representative ofinstantaneous pressure or pressure over time. In some embodiments, thepressure information includes voltage signals generated by a pressuresensor in response to measuring pressure. In other embodiments, thepressure information includes digital pressure values of the measuredpressure. In some embodiments, the pressure information may be receivedcontinuously or nearly continuously. In other embodiments, the pressureinformation may be received at periodic intervals (e.g., every threeseconds).

Process 200 includes using the pressure information to evaluate pressureat the bidirectional pressure sensor over time (204). The pressureinformation may be evaluated to determine whether the pressure valuesare positive or negative. The pressure information may be used togenerate a dynamic threshold. The dynamic threshold may include apositive and negative component (e.g., a positive value and a negativevalue). The dynamic threshold may increase or decrease depending on thepressure information over time. For example, the dynamic threshold mayincrease when pressure information indicates pressure is increasing inmagnitude. In some embodiments, the dynamic threshold may increase by afirst proportion when the pressures increase by a second proportion. Insome embodiments the first and second proportions may be equal, while inother embodiments, they are different. Similarly, the dynamic thresholdmay decrease by a first proportion when the pressure informationindicates pressure is decreasing by a second proportion. In someembodiments, the first and second proportions are equal. For example,the first and second proportions may be one-half.

Process 200 includes assigning a flow direction to a current pressure bycomparing the current pressure to at least one past pressure. Accordingto an exemplary embodiment, the at least one past pressure is used togenerate the dynamic threshold. The current pressure may be compared tothe dynamic threshold (i.e., the at least one past pressure). In someembodiments, the dynamic threshold may have a predetermined value (e.g.,zero) when the HVAC system, controller, and/or pressure sensor isinitialized. In such embodiments, the current pressure may be comparedto the predetermined value in the initial case. In some embodiments, afirst direction may be assigned to pressure when the current pressure isgreater than or equal to a maximum of the dynamic threshold. A seconddirection may be assigned to pressure when the current pressure is lessthan or equal to a minimum of the dynamic threshold. The maximum andminimum may be the current values of the dynamic threshold. The dynamicthreshold may include a positive and negative value. According toanother exemplary embodiment, assigning a flow direction includesdetermining a positive or negative multiplier.

Referring to FIG. 3, a flow diagram of a process 300 for determiningflow direction relative to a bidirectional sensor is shown, according toan exemplary embodiment. Process 300 may be implemented on, e.g.,controller 110 (FIG. 1). Process 300 may be a mid-level representationof a process described in more detail in FIG. 4.

Process 300 includes assigning initial conditions (302). Initialconditions may be assigned when the HVAC system, controller 110, and/orpressure sensor 102 are initialized. Initial conditions may include avalue or values of the dynamic threshold, initial polarity, finalpressure value, threshold limit, or other variables that may support theprocess. Some initial conditions may change automatically (e.g., basedon signals received from the pressure sensor). Some initial conditionsmay be fixed or semi-fixed, requiring user intervention to change thecondition. According to an exemplary embodiment, the initial conditionsinclude dynamic_threshold=0, setting the value of the positive andnegative components of the threshold to zero. The dynamic threshold willchange depending on the signals received from the pressure sensor overtime. The initial conditions may further include Polarity=1. Accordingto an exemplary embodiment, polarity may be positive (e.g., +1) ornegative (e.g., −1), and the initial conditions assume one or the other.The polarity may change depending on the signals received from thepressure sensor over time. The initial conditions may further includefinal_value=0. According to an exemplary embodiment, the final value isthe product of the current pressure value and the determined polarity.The final value may change depending on the signals received from thepressure sensor over time. The initial conditions may includethreshold_limit=0.15. The threshold limit may describe a maximummagnitude for the dynamic threshold in the positive and negativedirections. In some embodiments, the threshold limit may be set by auser and may be later changed by a user.

Process 300 includes receiving at least one signal representative of apressure measured by a bidirectional pressure sensor (304). The signalmay be representative of a positive or negative pressure value. Apositive pressure value may indicate flow in one direction, and thenegative pressure value may indicate flow in another direction. Acontinuous signal or multiple discrete signals may be received overtime.

Process 300 includes comparing the at least one signal to a threshold(306). The current pressure value indicated by the at least one signalcompared to a maximum and a minimum of the threshold. In someembodiments, the current pressure value may also be compared to athreshold limit.

Process 300 includes determining a direction of flow based on thecomparison (308). Determining the direction may include assigning apolarity or multiplier. According to an exemplary embodiment, thepolarity or multiplier may be positive or negative. In some embodiments,flow may be determined to be in a first direction (e.g., resulting inpolarity=1) when the current pressure value is greater than or equal toa maximum of the dynamic threshold. Flow may be determined to be in asecond direction (e.g., resulting in polarity=−1) when the currentpressure value is less than or equal to a minimum of the dynamicthreshold.

Process 300 includes adjusting the threshold based on the determineddirection, the at least one signal, and a threshold limit (310). Thethreshold may increase or decrease depending on the signals receivedover time. Thus, the threshold changes may include threshold expansionand threshold collapse. A threshold may expand when the magnitude of thecurrent pressure is greater than the magnitude of the current threshold.The threshold may collapse by a first proportion (e.g., the thresholdmay decrease by 25%) when the magnitude of the current pressure is lessthan the magnitude of the current threshold by a second proportion(e.g., when the current is less than 50% of the threshold). Themagnitude of the threshold may be changed to the threshold limit whenthe magnitude of the pressure value is greater than or equal to thethreshold limit.

Process 300 includes calculating a pressure variable (312). The pressurevariable may be described as a final pressure value. According to anexemplary embodiment, the pressure variable is the product of thecurrent pressure and the determined polarity. According to anotherexemplary embodiment, the calculated pressure variable is positive.

Process 300 includes outputting the pressure variable 314. The pressurevariable may be output to at least one memory device, a user device,and/or another device on the building management system. The output maybe a graphical user interface (e.g., on a client device, on a mobiledevice, generated by a web server, etc.). According to an exemplaryembodiment, the positive pressure variable may be used, by a buildingmanagement system component, to compute another value.

Referring to FIG. 4, flow diagram of a process 400 for determining flowdirection relative to a bidirectional sensor is shown, according to anexemplary embodiment. Process 400 may be implemented on, e.g.,controller 110 (FIG. 1). Process 400 may be a detailed representation ofa process described in FIGS. 2 and 3.

Process 400 includes initializing the HVAC system, controller 110,and/or pressure sensor 102 (402). During initialization, one or moreinitial conditions may be set. The initial conditions may includedynamic_threshold=0, Polarity=1, final_value=0, and thresholdlimit=0.15. In other embodiments, more or fewer initial conditions maybe assigned and/or different values may be assigned.

Process 400 includes determining the current pressure value (406).According to an exemplary embodiment, the current pressure value isequal to the sensor reading. In some embodiments, the pressure value maybe equal to the senor reading and an offset. Steps 406-418 may beconsidered as a threshold expansion phase. That is, steps 406-418determine whether a current pressure value is greater in magnitude thanthe past pressure values (e.g., reflected in the dynamic threshold) andadjust (increase) the dynamic threshold accordingly. Process 400includes determining if the current pressure value is greater than thepositive component of the dynamic threshold (408). This determines ifflow is in a positive direction. If so, positive polarity/multiplier(+1) may be assigned (410). The magnitude of the dynamic threshold mayalso be increased to the magnitude of the pressure value. That is, boththe positive component and the negative component of the dynamicthreshold may be increased to the magnitude of the pressure value.Process 400 includes, when the pressure value is not greater than thedynamic threshold, determining if the pressure value is less than thenegative component of the dynamic threshold (412). This determines ifflow is in a negative direction. If so, negative polarity/multiplier(−1) may be assigned (414). The magnitude of the dynamic threshold mayalso be increased to the magnitude of the pressure value. That is, boththe positive component and the negative component of the dynamicthreshold may be increased to the magnitude of the pressure value.Process 400 also includes determining whether the dynamic threshold, asadjusted based on the current pressure value, is greater in magnitudethan the threshold limit (416). If so, then the positive and negativecomponents of the dynamic threshold may be set to the threshold limit(418).

Steps 422 and 424 of process 400 may be described as a thresholdcollapse phase. That is, steps 422 and 424 determine whether a currentpressure value is lesser in magnitude than the past pressure values(e.g., reflected in the dynamic threshold) and adjust (decrease) thedynamic threshold accordingly. According to an exemplary embodiment, thedynamic threshold is decreased to twice the current pressure when thecurrent pressure decreases to one-half or less than one-half immediatepast pressure value(s) (e.g., as reflected in the dynamic threshold).Process 400 includes determining whether two times the absolute value ofthe current pressure value is less than the dynamic threshold (422).That is, has the current pressure decreased by at least one-half of thedynamic threshold? If so, then the positive and negative components ofthe dynamic threshold are set to two times the absolute value of thecurrent pressure value (424). In some embodiment, process 400 mayadditionally include determining whether two times the absolute value ofthe current pressure is greater than a minimum value. The minimum valuemay be an offset. If two times the absolute value of the currentpressure is greater than the minimum value, then the dynamic thresholdmay be set as in step 424. If the two times the absolute value of thecurrent pressure is not greater than the minimum value, then the dynamicthreshold may be set to the minimum value.

Process 400 includes calculating a final pressure value (426). The finalpressure value may be described as a pressure variable. According to anexemplary embodiment, the final pressure value is the current pressurevalue multiplied by the polarity/multiplier from step 402, step 410, orstep 414. In some embodiments, an offset may be added to or subtractedfrom the current pressure value. The offset may be an internal offsetvalue associated with the senor that may be positive or negative. Thesum or difference may then be multiplied by the polarity/multiplier tocompute the final pressure value. Other mathematical functions includingthe current pressure value and polarity may be used to calculate thefinal pressure value. The calculation is “final” in that it is carriedout after a polarity has been determined. Process 400 continues withnext current pressure value (406). At the end of each iteration, adifferent final value may be calculated.

Referring to FIGS. 5A-5B, plots of pressure (and, in FIG. 5B, thedynamic threshold) over time are shown, according to exemplaryembodiments. The plots may be generated based on the calculationsdescribed in FIGS. 2-4 and implemented on controller 110. The plots ofFIGS. 5A-5B may be output to at least one memory device, a user device,and/or another device on the building management system. The output maybe a graphical user interface (e.g., on a client device, on a mobiledevice, generated by a web server, etc.). For example, the plot of FIG.5A may be output to monitoring and reporting applications 140 via GUIengine 136 (FIG. 1). Depending on the embodiment, the plots include moredata or less data compared to the data shown in FIGS. 5A-5B. In someembodiments, a user may be able, via a user interface, to choose whatdata should be visible. A user may also be able to add data not shown inFIGS. 5A-5B (e.g., a static pressure). In other embodiments, theprocesses described herein will operate without displaying a graphicalrepresentation of pressure and dynamic threshold over time.

The plots of FIGS. 5A-5B include an x-axis representing time and ay-axis representing pressure. In various embodiments, different unitsfor time and pressure may be used. FIGS. 5A-5B include pressure 502,shown in a solid line. FIG. 5B includes the positive component 506 ofthe dynamic threshold in a dot-dash line. FIG. 5B also includes thenegative component 508 of the dynamic threshold in a dash line.

As reflected in FIG. 5A, pressure 502 during an initialization period(e.g., 27 seconds to approximately 120 seconds) is nominally negative.During the period, the pressure may be oscillating between positive andnegative and may not be truly indicative of a direction of air flow.Pressure 502 increases at approximately 120 seconds and generallyremains positive until approximately 450 seconds. Between 120 secondsand 450 seconds, the magnitude of the pressure 502 shifts, but thevalues are positive. At approximately 450 seconds, a transition 504occurs. After transition 504, pressure 520 is negative, with varyingmagnitudes. Transition 504 suggests a switch in the air flow direction,caused by, e.g., reversal of the airflow tubes connected to the pressuresensor.

FIG. 5B includes pressure 502 from FIG. 5A. FIG. 5B also includes thecorresponding dynamic thresholds 506, 508. As reflected in FIG. 5B, themagnitudes of the positive component 506 and the negative component 508are equal in magnitude and opposite in sign. That is, the dynamicthreshold 506, 508 is a mirror image across y=0. The magnitudes ofdynamic threshold 506, 508 are also shown to be greater than or equal toimmediate past pressure values(s). That is, as pressure value 502increases or decreases in magnitude, the dynamic threshold 506, 508expands or collapses, respectively, in response. For example, at points510, 514, the magnitude of the air pressure increases, and the dynamicthreshold is shown to expand. Range 520 shows that as magnitude of thepressure reaches a new local maximum, the dynamic threshold alsoincreases to at least the value of the local maximum. At points 512,516, the magnitude of the air pressure decreases and the dynamicthreshold is shown to collapse. According to an exemplary embodiment,the pressure 502 decreases by at least one-half its previous value atpoints 512, 516. The magnitude of the dynamic threshold changes, in thisembodiment, to twice the value of the pressure. Range 522 shows that asmagnitude of the pressure decreases, the dynamic threshold alsodecreases.

Controller 110 (FIG. 1) may be configured to detect a change in flowdirection when the magnitude of the flow exceeds the dynamic thresholdin the opposite direction. This is shown at point 510. At or near point510, the pressure changes from approximately −0.02 inches w.c. to +0.08inches w.c. The positive component 506 is approximately 0.02 inches w.c.at point 510. When the pressure changes from −0.02 inches w.c. to +0.08,it exceeds the dynamic threshold in the opposite direction. Thus,controller 110 may determine that a switch in air flow occurred at ornear point 510. Note that point 510 may be the special case of the HVACsystem, controller 110, or pressure sensor 102 initializing. Controller110 may also determine that a change in flow direction occurred at ornear transition 504. Pressure 502 changes from nearly zero toapproximately −0.05 inches w.c. The dynamic threshold near transition504 is also nearly zero. The change in pressure to −0.05 exceeds thenegative dynamic threshold. Thus, a change in flow direction isdetected.

The discussion herein described one embodiment for determining adirection of airflow. Other embodiments may be utilized. For theexample, the final value may be calculated using:

Final_value=absolute (raw_dpt−raw_offset).

Raw_dpt may describe the raw value from the pressure sensor, which maybe positive or negative. Raw_offset may describe an internal offset ofthe sensor, which may also be positive or negative. One or moreembodiments may advantageously determine the direction of airflowwithout knowledge of the direction that the tubes are connected to thepressure sensor. One or more embodiments may also advantageously outputin a positive pressure value, which may be used in control algorithmsfor one or more building management components. One or more embodimentsmay also correct a signal (indicative of the pressure) for a reversedhose polarity relative to the bidirectional sensor. That is, airflow ina negative direction (i.e., a direction because of reversed hosepolarity) may be identified and corrected (e.g., by taking the absolutevalue or applying a polarity multiplier).

While the discussion herein relates to the pressure of air in an HVACsystem, the methods and systems described may be applied to otherliquids and gases. For example, the direction of water flow in a watersystem may be automatically determined using a bidirectional pressuresensor and the systems and methods described herein.

The construction and arrangement of the systems and methods as shown inthe various exemplary embodiments are illustrative only. Although only afew embodiments have been described in detail in this disclosure, manymodifications are possible (e.g., variations in sizes, dimensions,structures, shapes and proportions of the various elements, values ofparameters, mounting arrangements, use of materials, orientations,etc.). For example, the position of elements may be reversed orotherwise varied and the nature or number of discrete elements orpositions may be altered or varied. Accordingly, all such modificationsare intended to be included within the scope of the present disclosure.The order or sequence of any processes or method steps may be varied orre-sequenced according to alternative embodiments. Other substitutions,modifications, changes, and omissions may be made in the design,operating conditions and arrangement of the exemplary embodimentswithout departing from the scope of the present disclosure.

The present disclosure contemplates methods, systems andcomputer-executable instructions on memory or other machine-readablemedia for accomplishing various operations. The embodiments of thepresent disclosure may be implemented using existing computerprocessors, or by a special purpose computer processor for anappropriate system, incorporated for this or another purpose, or by ahardwired system. Embodiments within the scope of the present disclosureinclude program products or memory comprising machine-readable media forcarrying or having machine-executable instructions or data structuresstored thereon. Such machine-readable media can be any available mediathat can be accessed by a general purpose or special purpose computer orother machine with a processor. By way of example, such machine-readablemedia can comprise RAM, ROM, EPROM, EEPROM, CD-ROM or other optical diskstorage, magnetic disk storage or other magnetic storage devices, or anyother medium which can be used to carry or store desired program code inthe form of machine-executable instructions or data structures and whichcan be accessed by a general purpose or special purpose computer orother machine with a processor. Combinations of the above are alsoincluded within the scope of machine-readable media. Machine-executableinstructions include, for example, instructions and data which cause ageneral purpose computer, special purpose computer, or special purposeprocessing machine to perform a certain function or group of functions.

Although the figures may show a specific order of method steps, theorder of the steps may differ from what is depicted. Also two or moresteps may be performed concurrently or with partial concurrence. Suchvariation will depend on the software and hardware systems chosen and ondesigner choice. All such variations are within the scope of thedisclosure. Likewise, software implementations could be accomplishedwith standard programming techniques with rule based logic and otherlogic to accomplish the various connection steps, processing steps,comparison steps and decision steps.

What is claimed is:
 1. A computerized method for determining flowdirection relative to a bidirectional pressure sensor, the methodcomprising: receiving pressure information from the bidirectionalpressure sensor; using the pressure information to evaluate, at aprocessing circuit, pressure at the bidirectional pressure sensor overtime; assigning a flow direction to a current pressure of thebidirectional pressure sensor by comparing the current pressure to atleast one past pressure.
 2. The method of claim 1, wherein assigning aflow direction comprises: calculating a range of pressure values basedon the at least one past pressure value; comparing the current pressureto the range; and determining a first flow direction if the currentpressure is greater than or equal to a maximum of the range and a secondflow direction if the current pressure is less than or equal to aminimum of the range.
 3. The method of claim 2, wherein comparing thecurrent pressure to the range comprises: determining if the currentpressure is greater than or equal to the maximum of the range;determining, when the current pressure is not greater than or equal tothe maximum of the range, if the current pressure is less than or equalto the minimum of the range.
 4. The method of claim 2, wherein the rangecomprises a positive component and a negative component.
 5. The methodof claim 2, further comprising: adjusting the range based on the currentpressure, wherein the range is greater than or equal to the currentpressure in magnitude.
 6. The method of claim 2, wherein the rangeincreases when the magnitude of the current pressure increases relativeto an immediate past pressure.
 7. The method of claim 2, where in therange decreases when the magnitude of the current pressure decreasesrelative to an immediate past pressure.
 8. The method of claim 2,wherein the range decreases by less than 1:1 relative to aninstantaneous pressure decrease.
 9. The method of claim 4, wherein therange does not exceed a maximum magnitude.
 10. The method of claim 1,wherein assigning a flow direction comprises determining a positive ornegative multiplier.
 11. A controller coupled to a bidirectionalpressure sensor, the controller comprising: a processing circuitconfigured to receive at least one signal representative of a pressuremeasured by a bidirectional pressure sensor, wherein the processingcircuit is further configured to compare the at least one signal to athreshold, wherein the threshold comprises a positive value and anegative value, and wherein the processing circuit is configured todetermine a direction of flow based on the comparison and to output apressure variable comprising a pressure magnitude and a sign based onthe determined direction.
 12. The controller of claim 11, wherein theprocessing circuit is further configured to: increase the magnitude ofthe threshold when the at least one signal is greater in magnitude thanan immediate past signal; and decrease the magnitude of the threshold bya first proportion when the at least one signal is lesser in magnitude,by a second proportion, than the immediate past signal.
 13. Thecontroller of claim 11, wherein the processing circuit is configured todetermine the direction of the flow by: determining if the at least onesignal is greater than or equal to the positive value; assigning apositive multiplier when the at least one signal is greater than orequal to the positive value; determining, when the at least one signalis not greater than or equal to the positive value, if the at least onesignal is less than or equal to a negative value; and assigning anegative multiplier when the at least one signal is less than or equalto the negative value.
 14. The method of claim 12, wherein themagnitudes of the positive value and the negative value do not exceed athreshold limit.
 15. The method of claim 11, wherein the positive valueand the negative value are equal in magnitude.
 16. The method of claim11, wherein the processing circuit is further configured to: calculatethe pressure variable based on a function comprising the at least onesignal and a multiplier based on the determined direction.
 17. Tangiblecomputer-readable storage media having computer-executable instructionsembodied thereon that when executed by a computing system perform amethod for determining flow direction relative to a bidirectionalpressure sensor, the media comprising: instructions for receiving atleast one signal representative of a pressure measured by abidirectional pressure sensor; instructions for comparing the at leastone signal to a threshold, wherein the threshold comprises a positivevalue and a negative value; instructions for determining a direction offlow based on the comparison; and instructions for outputting a pressurevariable comprising a pressure magnitude and a sign based on thedetermined direction.
 18. The tangible computer-readable storage mediaof claim 17, further comprising instructions for: increasing themagnitude of the threshold when the at least one signal is greater inmagnitude than an immediate past signal; and decreasing the magnitude ofthe threshold by a first proportion when the at least one signal islesser in magnitude, by a second proportion, than the immediate pastsignal.
 19. The tangible computer-readable storage media of claim 17,wherein instructions for determining the direction of the flow compriseinstructions for: determining if the at least one signal is greater thanor equal to the positive value; assigning a positive multiplier when theat least one signal is greater than or equal to the positive value;determining, when the at least one signal is not greater than or equalto the positive value, if the at least one signal is less than or equalto a negative value; and assigning a negative multiplier when the atleast one signal is less than or equal to the negative value.
 20. Thetangible computer-readable storage media of claim 18, wherein themagnitudes of the positive value and the negative value do not exceed athreshold limit.
 21. The tangible computer-readable storage media ofclaim 17, wherein the positive value and the negative value are equal inmagnitude.
 22. The tangible computer-readable storage media of claim 17,further comprising instructions for: calculating the pressure variablebased on a function comprising the at least one signal and a multiplierbased on the determined direction.
 23. A variable air volume (VAV)system comprising: hoses for receiving airflow; a bidirectional pressuresensor coupled to the hoses; and a controller for the VAV system coupledto the bidirectional pressure sensor, wherein the controller comprises aprocessing circuit configured to receive a signal from the bidirectionalpressure sensor and to correct the signal for a reversed hose polarityrelative to the bidirectional sensor.